package com.czm.art_light.service;

import com.czm.art_light.param.request.ArtUserReqDto;
import com.czm.art_light.param.request.LoginReqDto;
import com.czm.art_light.param.response.ArtLoginRespDto;
import com.czm.art_light.param.response.RestResp;
import jakarta.validation.Valid;

/**
 * 用户信息 接口类
 */
public interface ArtUserService {

    /**
     * 获取用户的登录请求信息，根据code获取openid
     * 再根据openid获取用户是否注册
     * 如果未注册，则进行注册并且进行登录（生成token 和用户的一些基本信息)
     */
    RestResp<ArtLoginRespDto> login(LoginReqDto loginReqDto);

    /**
     * 修改用户的信息
     */
    RestResp<Void> updateUser(@Valid ArtUserReqDto artUserReqDto);
}
